#include<queue>
class MyStack {
public:
    std::queue<int> q;
    MyStack() {

    }

    void push(int x) {
        int len = q.size();
        q.push(x);
        while (len > 0) {
            int start = q.front();
            q.pop();
            q.push(start);
            len--;
        }
    }

    int pop() {
        int start = q.front();
        q.pop();
        return start;
    }

    int top() {
        return q.front();
    }

    bool empty() {
        return q.empty();
    }
};